1. Field of the Invention
The present invention relates generally to the Universal Plug and Play (UPnP) home network system, and more particularly relates to a method and system for accessing of UPnP device management data models.
2. Description of the Related Art
Universal Plug and Play (UPnP) is a set of computer network protocols promulgated by the UPnP forum. The goals of UPnP are to allow access to connect devices together seamlessly and to simplify the implementation of networks in home environments (e.g., data sharing, communications, and entertainment environments) and corporate environments. These goals are achieved by defining and publishing UPnP device control protocols built upon open, Internet-based communication standards.
The UPnP technology can cater to a wide range of devices in a home network. The UPnP technology provides discovery, control and eventing mechanisms. Discovery is enabled using Simple Service Discovery Protocol (SSDP). Eventing follows General Event Notification Architecture (GENA) protocol. Using these technologies, UPnP sets UPnP devices as available and unavailable to the other devices in the UPnP home network, on the fly.
UPnP architecture allows peer-to-peer networking of Personal Computers (PCs), networked appliances, and wireless devices. UPnP architecture is also a distributed, open architecture based on established standards such as Transmission Control Protocol (TCP)/Internet Protocol (IP), User Datagram Protocol (UDP), HyperText Transfer Protocol (HTTP) and eXtensible Markup Language (XML).
The UPnP architecture supports zero configuration networking. For example, a UPnP compatible device from any vendor can dynamically join a network, obtain an IP address, announce its name, convey its capabilities upon request, and learn about the presence and capabilities about other devices. UPnP devices can also automatically leave the UPnP home network without leaving any unwanted state information.
The foundation for UPnP networking is IP addressing. Each UPnP device includes a Dynamic Host Configuration Protocol (DHCP) client that searches for a DHCP server when the UPnP device is first connected to the UPnP network. If no DHCP server is available, the UPnP device assigns itself an address. If during the DHCP transaction, the UPnP device obtains a domain name, for example, through a Domain Name System (DNS) server or via DNS forwarding, the UPnP device uses that name in subsequent network operations; otherwise the UPnP device uses its IP address.
UPnP defines a device protection service as a generic security solution that can be used by all services defined in the UPnP. Device protection service defines concept of roles of control points and/or control devices. All control points or control devices are assigned different roles (i.e., public, basic, and admin) for performing UPnP actions. Different DHCPs and Vendors are free to extend these sets of roles.
The UPnP device management service defines a concept of data models. A UPnP data model is a tree representation of various device and service configuration related information. The terms “UPnP data model” and “data model” are used interchangeably herein. Such data models include various kinds of nodes such as leaf nodes, single instance nodes, multi-instance nodes and instance nodes. Data models may contain sensitive information that must be protected. Also, some of the configuration information stored in the data models may be irrelevant to some of the control points or users in home network environment. Current device protection services provide complete configuration information stored in the data models to a control point when requested. As a consequence, the control point obtains access to sensitive and irrelevant information provided in the complete configuration information.
Therefore, there exists a need for a way to provide access control for viewing, reading, and modifying configuration information stored in UPnP device management data models, thereby providing protection to configuration information stored in the data models.